package com.witmore.skyline.web.service;

import com.witmore.skyline.db.entity.CameraDO;
import com.witmore.skyline.db.entity.CameraTaskDO;
import com.witmore.skyline.web.service.third.tplink.dto.TpResultDataDTO;
import com.witmore.skyline.web.service.third.tplink.dto.TpThreadTaskQueueDTO;

public interface CameraCaptureTpService {


    /**
     * 提交抓拍任务
     */
    String submitCaptureTaskTP(CameraDO cameraDO);

    /**
     * 轮询任务表查询任务状态
     */
    TpResultDataDTO executeCapturePicTaskStatus(String taskId);

    /**
     * 获取摄像头抓取图片
     */
    String getCameraCaptureFile(TpThreadTaskQueueDTO queueDTO);

    /**
     * 抓拍图片
     */
    String tpCameraCapturePicHandler(CameraDO cameraDO, CameraTaskDO cameraTaskDO);

    /**
     * 保存抓拍记录
     */
    void saveCaptureRecord(TpThreadTaskQueueDTO tpThreadTaskQueueDTO, TpResultDataDTO tpResultDataDTO, String ossUrl);

    /**
     * 提交抓拍任务 定时任务
     */
    void executeSubmitCapturePicTaskTP(String cameraSn);
}
